Robotic Arm: Pick & Place

Steps to complete the project:

  1. Make sure you have already setup your ROS Workspace. If not, you can find instructions here.
  2. Download or clone the project repository into the src directory of your ROS Workspace and read the README file thoroughly.
  3. Experiment with the forward_kinematics environment and get familiar with the robot (details here)
  4. Launch the pick and place demo (instructions here) to get familiar with various steps in the project
  5. Perform Kinematic Analysis for the robot following the project rubric along with proper writeup.
  6. Fill in the IK_server.py with your Inverse Kinematics code. Instructions on how to do the math behind IK can be found here and how to convert your IK math into code can be found here

In this project, you will be writing code to perform Inverse Kinematics, meaning given a list of end-effector poses, you will calculate joint angles for the Kuka KR210. To complete this project you will use the tools you learned about in the lesson, and build upon them.

Your first goal is to setup your environment properly. Then explore the forward_kinematics with Kuka KR210 to learn more about the robot's geometry and derive DH parameters. Once you have the DH parameters, run the complete pick and place project in demo mode to get an understanding of the complete project scenario.

Next you will perform Kinematic Analysis of the robot and derive equations for individual joint angles. In addition, you will write the actual Inverse Kinematics code inside of IK_server.py file with proper comments. You can refer the general Inverse Kinematics content here or a quick recap here. Instructions on proper formatting for your IK code and details of how IK_server.py works can be found here.

Finally, you'll make a brief writeup report. The github repository has a writeup_template.md that can be used as a guide. Please include a screenshot of the completed pick and place process!

If you're struggling to with parts of this project, or just want some help getting your code up to the minimum standards for a passing submission, we've recorded a Project Demo of the basic implementation for you.

Evaluation

Once you have completed your project, use the Project Rubric to review the project. If you have covered all of the points in the rubric, then you are ready to submit! If you see room for improvement in any category in which you do not meet specifications, keep working!

Your project will be evaluated by a Udacity reviewer according to the same Project Rubric. Your project must "meet specifications" in each category in order for your submission to pass.

Submission

What to include in your submission

You may submit your project as a zip file or with a link to a GitHub repo. The submission must include these items:

  1. IK_server.py file with your code (make sure to add comments at appropriate places in your code)
  2. Writeup report (md or pdf file)

Ready to submit your project?

Click on the "Submit Project" button and follow the instructions to submit!

Feedback

Please fill out the Project Feedback Form after you have completed the project.